import ajax from 'uni-ajax'
import conf from './config.js'

// 创建请求实例
const instance = ajax.create({
	// 初始配置
	baseURL: conf.url_config
})

let params = uni.getAccountInfoSync().miniProgram;

// 添加请求拦截器
instance.interceptors.request.use(
	config => {
		// 在发送请求前做些什么
		if (uni.getStorageSync('token')) {
			// 让每个请求携带自定义token 请根据实际情况自行修改
			config.header['Token'] = uni.getStorageSync('token')
		}
		return config
	},
	error => {
		// 对请求错误做些什么
		return Promise.reject(error)
	}
)

// 添加响应拦截器
instance.interceptors.response.use(
	res => {
		// 对响应数据做些什么
		const data = res.data
		const code = res.data.code
		if (code < 1) {
            uni.showModal({
                title: '警告',
                content: res.data.message || res.data.msg,
                showCancel: false
            });

			return Promise.reject(res)
		} else {
            if (code === 401) {
                uni.showModal({
                    title: '警告',
                    content: '请先登录，才能进行下面操作！',
                    success: function (res) {
                        if (res.confirm) {
                            uni.navigateTo({
                                url: '/pages/user/login'
                            })
                        } else if (res.cancel) {
                            uni.navigateBack()
                        }
                    }
                })
            } else {
                return data
            }
		}
	},
	error => {
		// 对响应错误做些什么
		return Promise.reject(error)
	}
)

// 导出 create 创建后的实例
export default instance
